package pt.fct.mpc.lastfm.artist;

import java.io.Serializable;
import java.util.List;
import java.util.Vector;

import pt.fct.mpc.lastfm.event.EventData;

public class ArtistData implements Serializable {
	/**
	 * 
	 */
	private static final long serialVersionUID = 3202204939196696952L;
	private String name = "";
	private String url = "";
	private String image_small = "";
	private String image_medium = "";
	private String image_large = "";
	private String image_extraLarge = "";
	private String image_mega = "";
	private List<String> tags = new Vector<String>();
	private String bio_summary = "";
	private String bio_content = "";
	private boolean contentParsed = false;

	private List<AlbumData> albums = new Vector<AlbumData>();
	private List<EventData> events = new Vector<EventData>();
	private List<ImageData> images = new Vector<ImageData>();

	public List<ImageData> getImages() {
		return images;
	}

	public void setImages(List<ImageData> images) {
		this.images = images;
	}

	public List<EventData> getEvents() {
		return events;
	}

	public void setEvents(List<EventData> events) {
		this.events = events;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name += name;
	}

	public String getUrl() {
		return url;
	}

	public void setUrl(String url) {
		this.url += url;
	}

	public String getImage_small() {
		return image_small;
	}

	public void setImage_small(String imageSmall) {
		image_small += imageSmall;
	}

	public String getImage_medium() {
		return image_medium;
	}

	public void setImage_medium(String imageMedium) {
		image_medium += imageMedium;
	}

	public String getImage_large() {
		return image_large;
	}

	public void setImage_large(String imageLarge) {
		image_large += imageLarge;
	}

	public List<String> getTags() {
		return tags;
	}

	public void addTag(String tag) {
		this.tags.add(tag);
	}

	public String getBio_summary() {
		return bio_summary;
	}

	public void setBio_summary(String bioSummary) {
		bio_summary += bioSummary;
	}

	public String getBio_content() {
		return bio_content;
	}

	public void setBio_content(String bioContent) {
		bio_content += bioContent;
	}

	public void setAlbums(List<AlbumData> albums) {
		this.albums = albums;
	}

	public List<AlbumData> getAlbums() {
		return albums;
	}

	public String getImage_extraLarge() {
		return image_extraLarge;
	}

	public void setImage_extraLarge(String imageExtraLarge) {
		image_extraLarge += imageExtraLarge;
	}

	public String getImage_mega() {
		return image_mega;
	}

	public void setImage_mega(String imageMega) {
		image_mega += imageMega;
	}

	public void setArtistInfo(ArtistData parsedData) {
		this.url = parsedData.getUrl();
		this.image_small = parsedData.getImage_small();
		this.image_mega = parsedData.getImage_mega();
		this.image_medium = parsedData.getImage_medium();
		this.image_large = parsedData.getImage_large();
		this.image_extraLarge = parsedData.getImage_extraLarge();
		this.tags = parsedData.getTags();
		this.bio_summary = parsedData.getBio_summary();
		this.bio_content = parsedData.getBio_content();
	}

	public void setContentParsed(boolean contentParsed) {
		this.contentParsed = contentParsed;
	}

	public boolean isContentParsed() {
		return contentParsed;
	}
}